package cn.iocoder.yudao.module.contract.api.impl;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.contract.api.OrderContractApi;
import cn.iocoder.yudao.module.contract.api.dto.OrderContractDTO;
import cn.iocoder.yudao.module.contract.api.dto.OrderContractQryReq;
import cn.iocoder.yudao.module.contract.controller.admin.orderContract.vo.OrderContractPageReqVO;
import cn.iocoder.yudao.module.contract.controller.admin.orderContract.vo.OrderContractPageRespVO;
import cn.iocoder.yudao.module.contract.dal.mysql.orderContract.OrderContractMapper;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;

@Service
public class OrderContractImpl implements OrderContractApi {

    @Resource
    private OrderContractMapper orderContractMapper;

    @Override
    public List<OrderContractDTO> list(OrderContractQryReq req) {
        OrderContractPageReqVO reqVO = BeanUtils.toBean(req,OrderContractPageReqVO.class);
        PageResult<OrderContractPageRespVO> page = orderContractMapper.selectPage(reqVO);
        return page.getTotal()==0? new ArrayList<>() : BeanUtils.toBean(page.getList(),OrderContractDTO.class);
    }
}
